VirtualDub external video filter SDK - v1.05

This SDK is designed to help you write a video filter, like VirtualDub's internal resize and invert filters, that can be dynamically loaded and run without requiring source code integration. This version of the filter SDK applies to VirtualDub 1.4.11. Some of the features described here may not be available in earlier versions of VirtualDub.

If you use this information to create a external video filter, I'd appreciate you keeping in touch with me at <phaeron@virtualdub.org>, and making your filter open-source.  This allows me to test and debug your filter against future versions of VirtualDub, and contact you if there are any compatibility problems with your filter.  Please do not send me binaries of your filter unless I ask for them, especially if there are betas -- it is preferable that you place them on a website somewhere.


How VirtualDub's filter system works
Limitations of VirtualDub external video filters
Alternate execution environments for VirtualDub filters

Tutorial, a.k.a. "Let's build a filter"

Implementing active preview in your filter
Sampling the source video
Retrieving processing state information
Using GDI in VirtualDub video filters
Manipulating data in VFBitmaps
New features in VirtualDub 1.4: Exception handling, CPU identification, ESP modification, host query, and filter lag
New feature in VirtualDub 1.4.11: Use a regular class object for your filter   new

A crash course in image processing
Algorithmic optimization tips
Low-level optimization tips

Other features not covered in the tutorial
Debugging video filters
Fallacies: Things you might do in a filter, but shouldn't
Integrating a filter into the VirtualDub source tree

Reference


VirtualDub external filter SDK 1.05©1999-2001 Avery Lee <phaeron@virtualdub.org>